
\section{Implementación de estrategias de reemplazo de páginas}

La implementación provista (\texttt{FIFOReplacementStrategy}) recorre todos los frames y, de entre los \textit{reemplazables} (los que no están en uso) se queda con el de fecha de creación más antigua. Nosotros generalizamos esto en \\ \texttt{AbstractPageReplacementStrategy}, que de entre los reemplazables elige el máximo de acuerdo a cierto criterio mediante un \texttt{Comparator}. Como ejemplo implementamos \texttt{FIFO2ReplacementStrategy}, de comportamiento análogo al otro FIFO pero usando esta generalización.

A partir de esta clase abstracta fue fácil definir las estrategias LRU y MRU, que comparan de acuerdo a la fecha de última referencia. Ambas utilizan frames de tipo \texttt{LastUseDateBufferFrame} que almacenan esta fecha.
